<?php
	
	class LoginHandler{
		
		private $LoginSession = "LoginHandlerLoggedIn"; 
		
		//Loginfunktion, returnerar true om user och pass är rätt, annars false
		public function Login($user, $pass)
		{			
			switch ($user)
			{
				case "correct":
					switch ($pass) {
						case "pass":
							$_SESSION[$this->LoginSession] = "loggedin";
							return true;
							break;
						default:
							return false;
					}
				case "zlatan":
					switch ($pass) {
						case "ibra":
							$_SESSION[$this->LoginSession] = "loggedin";
							return true;
							break;
						default:
							return false;
					}
				case "nisse":
					switch ($pass) {
						case "nissesson":
							$_SESSION[$this->LoginSession] = "loggedin";
							return true;
							break;
						default:
							return false;
					}									
				default:
					return false;
			}
		}
		
		public function Logout()
		{
			if(isset($_SESSION[$this->LoginSession]) == true){
				unset($_SESSION[$this->LoginSession]);
			}
		}
		
		public function IsLoggedIn()
		{
			if(isset($_SESSION[$this->LoginSession]) == true){
				return true;			
			}
			return false;		
		}
		
		public function Test()
		{
			//Loggar ut
			$this->Logout();
			
			//Kollar om man verkligen är utloggad
			if($this->IsLoggedIn() == true){
				echo "Fel på antingen Logout eller IsLoggedIn <br />";
				return false;
			}
			
			//Loggar in med fel uppgifter
			if($this->Login("bad", "user") == true){
				echo "Fel på inloggningen! <br />";
				return false;
			}
			
			//Kollar om man verkligen är utloggad
			if($this->IsLoggedIn() == true){
				echo "Fel på antingen Logout eller IsLoggedIn 2 <br />";
				return false;
			}
			
			//Loggar in med rätt
			if($this->Login("correct", "pass") == false){
				echo "Fel på inloggningen";
				return false;
			}
			
			//Kontrollera så att vi är inloggade
			if($this->IsLoggedIn() == false){
				echo "Det är något fel på IsLoggedIn <br />";
				return false;
			}
			
			//Loggar ut
			$this->Logout();
			
			//Kollar om man verkligen är utloggad
			if($this->IsLoggedIn() == true){
				echo "Fel på antingen Logout eller IsLoggedIn 2 <br />";
				return false;
			}
						
			return true;
		}
		
	}
